TRSDOS 1.3 Quick Reference Summary 


TRSDOS 1.3 Command Syntax
------------------------------------------------------------

 1. The general form of each command is given as the command
itself, followed by the input/output field, followed by
the parameters field. The parameter field and certain
portions of the I/O field are optional and may be included
at the discretion of the operator.

 2. Capital letters and spaces in the command lines must be
typed exactly as shown.

 3. Brackets in the command line indicate that the
instruction contained within the brackets is optional and
may or may not be entered, depending on the situation and
the user's desire for clarity.

 4. Parentheses indicate the parameter field. This field is
composed of those parameters that will modify the action of
the command to suit the user's needs.

 5. Braces indicate the default values of a paramter or a
prompt. If <ENTER> is typed instead of the the value or
switch required, the default is used.

 6. The parameter values are indicated by val (value), exp
(expression), or sw (switch). Sample numeric values, string
expressions, or switch indicators are usually given.

 7. File specifications take the following format:
    filespec/ext.password:d
       filespec   - an alphabetic character A-Z followed by
                    up to seven optional characters or
                    numbers
       /ext       - optional file specification extension,
                    consisting of an alphabetic character
                    and up to two optional characters or
                    numbers
       .password  - optional file password consisting of an
                    alphabetic character followed by up to
                    seven optional characters or numbers
       :d         - optional drive specification, which
                    indicates the drive on which the file
                    is located


TRSDOS 1.3 Hardware Features:
------------------------------------------------------------

 1. Upper case lock (all upper or upper & lower case) is
toggled by <SHIFT><0>.

 2. Control characters are entered by pressing <LEFT
SHIFT><DOWN ARROW> (listed on this here as <CTRL>).

 3. Listing functions (DIR, LIST, etc.) are halted by
pressing <SHIFT><@>.

 4. Convert to 32 character line with <SHIFT><RIGHT ARROW>.

 5. Activate print screen function with <SHIFT><DOWN
ARROW><*>.

 6. Interupt program execution with <BREAK>.

 7. Start over at beginning of line with <SHIFT><LEFT ARROW>.


TRSDOS 1.3 Library (Internal) Commands
------------------------------------------------------------
APPEND - append file/device data to another file
   APPEND filespec1  filespec2
      filespec - any valid TRSDOS file specification
      filespec1 - file to be append
      filespec1 - file to which filespec1 is appended

ATTRIB - change protection status of file or disk
   ATTRIB filespec.password:d (ACC=,UPD=,PROT=,I/N)
     :d - drive containing disk to be attributed
     filespec - any valid TRSDOS file specification
     password - any valid password
      ACC= - access password
      UPD= - update password
      PROT= - protection
         EXEC - execute only
         READ - read, execute
         WRITE - write, read, execute
         NAME - rename, write, read, execute
         KILL - all access, except re-attrib
         FULL - total access
      N = file visible (non-invisible) in directory
      I = file invisible in directory

AUTO - execute command at boot
   AUTO dos-command
     dos-command - any executable TRSDOS command
   Note: Holding <ENTER> while pressing RESET will
         override AUTO; typing AUTO disables command

BUILD - build a DO file
   BUILD filespec
      filespec - any valid TRSDOS file specification {BLD}

CLEAR - clear user memory
   CLEAR (START=aaaa,END=bbbb,MEM=cccc)
       START - where to start clearing memory
       END - where to end clearing memory
       MEM - set memory protect address
       aaaa - four-digit hex number
       bbbb - four-digit hex number
       cccc - four-digit hex number
   CLEAR        Clear all available RAM

CLOCK - toggle clock display
   CLOCK (ON/OFF)
       ON - turn clock display on
       OFF - turn clock display off

CLS - clear the screen
   CLS

COPY - copy data from file to file
   COPY filespec1 filespec2
   COPY filespec :d
   COPY /ext :d
      filespec - any valid TRSDOS file specification
      :d - any valid drive
      /ext - wildcard file copy by extension

CREATE - preallocate space in a file
   CREATE filespec (LRL=aaa,REC=bbb)
      filespec - any valid filespec
      LRL= - logical record length (1-256) {256}
      REC= - number of records to allocate

DATE - set or display date
   DATE mm/dd/yy - set date
       mm - 2 digit month
       dd - 2 digit day
       yy - 2 digit year
   DATE - with no parameter, returns current date

DEBUG - system debugging utility
   DEBUG
      C - call single-step
      D - display contents of memory
      F - file patch utility
      I - instruction single-step
      J - jump 
      M - modify RAM
      Q - quit
      R - change register contents
      S - full-screen display
      U - update
      X - half-screen display
      ; - inscrement display address
      - - decrement display address

DIR - display disk directory
   DIR :d (INV,SYS,PRT)
      :d - valid drive in system
      INV - display invisible files {no}
      SYS - display system files {no}
      PRT - output to printer {no}

DO - execute a /BLD file
   DO filespec
      filespec{/BLD} - filespec for a BLD file

DUAL - duplicate output to video and printer
   DUAL (ON/OFF)
      ON - turn on DUAL process
      OFF - turn off DUAL process

DUMP - dump memory to a file
   DUMP filespec (START=,END=,TRA=,RELO=)
      filespec - any valid TRSDOS file specification
      START= - starting address
      END - ending address
      TRA= - transfer address
      aaaa - four-digit hex numbers

ERROR - display error message
   ERROR number
      number - decimal number for TRSDOS error code

FORMS (WIDTH=aaa,LINES=bbb) - sets printer parameters
   WIDTH - set printer width
   LINE - set number of lines per page

FREE - display disk free space
   FREE :d (PRT) - full granule allocation map {:0}
      PRT - output to printer

HELP - explanation of TRSDOS command
   HELP command
      command - specific TRSDOS command
   HELP - with no parameter, display all subjects

KILL - delete a file or group of files
   KILL filespec:d - delete file
   KILL /ext:d - wildcard file deletions
      filespec - any valid TRSDOS file specification
      :d - destination drive specification
      /ext - extension for wildcard deletion

LIB - displays a list of the library commands
   LIB
      no parameters are required

LIST - list contents of a file
   LIST filespec (PRT,SLOW,ASCII)
      filespec - any valid TRSDOS file specification
      PRT - list to printer
      SLOW - pause briefly after each record
      ASCII - list file in ASCII format, not hex format

LOAD - load a file without execution
   LOAD filespec
      filespec{/cmd} - file in load module format

MASTER - set master read/write drive
   MASTER (DRIVE=a)
      a - any valid drive specification

PATCH - change the contents of a disk file
   PATCH filespec (ADD=aaa,FIND=bb,CHG=cc)
      filespec - any valid TRSDOS file specification
      ADD - address at which data is found
      FIND - string to be found or compared
      CHG - new contents of byte
      aaaa - four-digit hex number
      bb - hex sequence
      cc - hex sequence

PAUSE - pause execution for operator action
   PAUSE message
      message - message to be displayed during PAUSE

PROT - use or change a disk's master password
   PROT:d (PW,LOCK)
      :d - any valid TRSDOS drive specification
      PW - change master passowrd
      LOCK - assign master password to all unprotected files

PURGE - delete files
   PURGE:d (SYS,INV,ALL)
      :d - any valid TRSDOS drive specification
      SYS - all system and user files (no invisible)
      INV - all invisible and usert files (no system)
      ALL - all files on disk (user, system, invisible)

RELO - change where program loads into memory
   RELO filespec (ADD=aaaa)
      filespec - any valid TRSDOS file specification
      ADD - new load address
      aaaa - four-digit hex number

RENAME - change filename
   RENAME filespec1 to filespec2
      filespec - any valid TRSDOS file specification

ROUTE - re-route input/output device
   ROUTE (SOURCE=aa,DESTIN=bb)
      SOURCE - source I/O device
      DESTIN - destination I/O device
      aa or bb - any valid TRSDOS device
         KB - keyboard
         DO - video display
         PR - line printer
         RI - RS-232 input
         RO - RS-232 output

SETCOM - set up RS-232 communications
   SETCOM (OFF,WORD=a,BAUD=b,STOP=c,PARTIY=d,mode)
      OFF - turns off RS-232
      WORD - number of bit/byte
         a - must be 5, 6, 7, or 8
      BAUD - specifies baud rate
         b - decimal number between 50 and 9600
      STOP - number of stop bits
         c - must be 1 or 2
      PARITY - determines whether odd, even, or none
         d - 1 (odd), 2 (even), 3 (none)
      mode - WAIT or NOWAIT

TAPE - tape/disk transfer
    TAPE (S=source,D=destination)
       source/destination
          T - tape
          D - disk
          R - random access memory

TIME - set real-time clock or get time
   TIME hh:mm:ss - set system time
      hh - hours 00-23
      mm - minutes 00-59
      ss - seconds 00-59
   TIME - display time

WP - write-protect via software
   WP (DRIVE=d)
      d - any valid TRSDOS drive specification


TRSDOS 1.3 Utility Programs
-----------------------------------------------------------
BACKUP - create an exact copy of an orifinal disk
   BACKUP :s to :d - mirror image backup
      :s - source drive number
      :d - destination drive number

CONVERT - converts files from Model I to TRSDOS 1.3
   CONVERT :s :d
      :s - source drive number
      :d - destination drive number

FORMAT - format a diskette
   FORMAT :d
      :d - drive number containg blank diskette

HERZ50 - set up for 50 Hz power (non-USA users)
   DO HERZ50

LPC - line printer control to ignore multiple CR's
   LPC 
MEMTEST - test memory
   MEMTEST

XFERSYS - transfer system files to TRSDOS 1.1 and 1.2
   XFERSYS


TRSDOS 1.3 Disk BASIC Extensions
------------------------------------------------------------

BASIC - extended disk BASIC and DOS commands
BASIC filespec -F:nn -M:nnnn
   filespec - optional file specification
   -F:nn - number of files (0-15) to be open at one time
   -M:nnnn - highest memory address BASIC will use
BASIC * - re-enter BASIC with program intact
   &Hdddd - directly use hexadecimal numbers
      dddd - one to four digit hexadecimal value
   &Odddd - directly use octal numbers
      dddd - one to four-digit octal number
   CLOSE filnum, filnum, filnum... - close open disk files
      filnum - optional file number (1-15) to be closed;
               if omitted; all files are closed
   CMD"A" - return to TRSDOS with error message
   CMD"B" - enable/disable <BREAK> key
   CMD"C",R/S - delete spaces and REMs from program
      R - delete remarks
      S - delete spaces
   CMD"D:d" - display directory for specified drive
      :d - any valid TRSDOS drive specification
   CMD"E" - returns last TRSDOS error message
   CMD"I",command - return a command to TRSDOS
      command - TRSDOS command or valid file specification
   CMD"J",s,d - convert calendar date to Julian
      s - source with date to be converted
      d - string variable to contain converted date
          mm/dd/yy - month-day-year sequence
          -yy/dd - day of the year
   CMD"L",routine - load Z-80 subroutine or file into RAM
      routine - string containing file specification
   CMD"O",exp,array(start)
      exp - expression to indicate number of elements
      array - primary key array with starting element no.
      start- subscript of first element to be sorted
   CMD"P",status - check printer status
      status - string variable
   CMD"R" - turn on the clock display
   CMD"S" - normal return to TRSDOS
   CMD"T" - turn off the clock display
   CMD"X",target - cross reference
   CMD"Z","switch" - duplicate output to video and printer
      switch - string expression (ON or OFF)
   CVD(var$) - restore string to number
      var$ - inverses MKD$ with 8 byte string
   CVI(var$) - restore string to number
      var$ - inverses MKI$ with 2 byte string
   CVS(var$) - restore string to number
      var$ - inverses MKD$ with 4 byte string
   DEF FN name(var)=exp - define function
      name - variable used to name function
      var - variable(s) to be passed to function
      exp - function desired
   DEFUSRn = address - define entry address for machine-
      language subroutine
      n - USR routine number (0-9)
      address - machine language entry point
   EOF(filnum) - determine if end of file is reached
      filnum - file buffer being interrogated
   FIELD filnum,num AS var$,num AS var... - partition
      the buffer used with a random file
      filnum - file buffer number specified in OPEN
      num - length of that field
      var$ - variable name for the field
   GET filnum, recnum - read record from random file
      filnum - file buffer number
      recnum - logical record number
   INPUT# filnum,var,var,var... - sequential file input
      filnum - file buffer number of file
      var - variable containing information read in
   INSTR (pos,targ$,sub$ - string search function
      pos - optional position; 1 is assumed
      targ$ - name of string to be searched
      sub$ - sub-string to be searched for
   KILL "filespec" - delete program or data from disk
      filespec - standard TRSDOS file specification
   LINE INPUT"prompt";var$ - keyboard line input
      prompt - optional prompt to be displayed
      var$ - name of string to return information
   LINE INPUT# filnum,var$ - input line from disk file
      filnum - file buffer number of sequential file
      var - variable name to store the string
   LOAD "filespec",option - load program from disk
      filespec - standard TRSDOS file specification
      option - one or more special options to engage
         R - runs program after loading; open file will
             not be closed
         V - preserves current set variables and FIELD
         line number - begins execution at line number
             specified when R option is used
   LOC(filnum) - determine last record accessed
      filnum - file buffer number being interrogated
   LOF(filnum) - determine number of record in a file
      filnum - file buffer number being interrogated
   LSET (or RSET)var$=exp$ - fill output buffer
      var$ - variable defined via FIELD statement
      exp$ - string expression to be placed in buffer
   MERGE "filespec" - merge ASCII file with resident program
      filespec - standard TRSDOS file in ASCII format
      option - optional switch R to not interrupt program
         execution after new file is loaded
   MID$ (var$,pos,len=rep$ - replace portion of a string
      var$ - name of string to be edited
      pos - starting position of replacement
      len - specifies number of character to be replaced
      rep$ - string to be replaced with var$
   MKD$(exp) - convert numbers to strings
      exp - returns 8 byte string; double precision
   MKI$(exp) - convert numbers to strings
      exp - returns 2 byte string; integer precision
   MKS$(exp) - convert numbers to strings
      exp - returns 4 byte string; single precision
   NAME,new,start,inc - renumber the current program
      new - new number of first line to be renumbered {10}
      start - line number to start renumbering {0}
      inc - increment between successive lines {10}
   OPEN "mode",filenum,"filespec",lrl - open disk file
      mode - I/O mode intended for file
         R - random access mode
         I - sequential input mode
         E - sequential output extension mode
         O - sequential output mode
      filespec - any valid TRSDOS file specification
      lrl - logical record length for "R" files
   PRINT# filnum,USING format$,var,del,var... - output
      data to a sequential file
      filnum - file buffer number of sequential file
      USING format$ - optional format string to define
         data format for the print
      var - variable containing data to be written
      del - delimiter that must be placed between each
         variable to be written; may be semi-colon
   PUT filnum,recnum - write random access file
      filnum - file buffer number
      recnum - logical record number to be written
   RESTORE nnnn - set data pointer to line nnnn
   RUN "filespec",option - load and run a program
      filespec - standard TRSDOS file specification
      option - one of three special options
         R - any open files will not be closed
         V - preserves currently set variables and FIELD
         line number - runs program beginning at line no.
   SAVE "filespec",A - save program
      filespec - standard TRSDOS file specification
      A - optional switch to save file in ASCII format
   SET EOFn - set EOF to last record accessed+1
   USRn (var) - call user external subroutine
      n - USR routine number
      var - variable to be passed to USR routine

SHORTHAND - command abbreviations
   <DOWN ARROW> - list next line of program
   <UP ARROW>  - list preceding line of program
   <SHIFT><UP ARROW> - list first line of program
   <SHIFT><DOWN ARROW><Z> - list last line of program
   Lxx      - list line xx
   Dxx      - delete line xx
   Exx      - edit line xx
   Axx,yy   - automatic line numbering
      xx - beginning at line xx
      yy - incrementing by yy
  <.>        - list current line of program
  <,>        - edit current line of program


TRSDOS 1.3 DOS Error Messages
-----------------------------------------------------------

Dec     Hex    Error Message
---     ---    -------------
0        00    No error found
1        01    CRC error during disk I/O
2        02    Disk drive not in system
3        03    Lost data during disk I/O
4        04    CRC error during disk I/O
5        05    Disk sector not found
6        06    Disk drive hardware fault
7        07    ** Undefined error code **
8        08    Disk drive not ready
9        09    Illegal I/O attempt
10       0A    Required command parameter not found
11       0B    Illegal command parameter
12       0C    Time out on disk drive
13       0D    I/O attempt to non-system disk
14       0E    Write fault on disk I/O
15       0F    Write protected disk
16       10    Illegal logical file number
17       11    Directory read error
18       12    Directory write error
19       13    Invalid file name
20       14    GAT read error
21       15    GAT write error
22       16    HIT read error
23       17    HIT write error
24       18    File not found
25       19    File access denied due to password protection
26       1A    Directory space full
27       1B    Disk space full
28       1C    Attempted to read past EOF
29       1D    Attempted to read outside of file limits
30       1E    No more extents available
31       1F    Program not found
32       20    Improper drive number
33       21    ** Undefined error code **
34       22    Attempted to use non-program file as program
35       23    Memory fault during program load
36       24    ** Undefined error code **
37       25    File access denied due to password protection
38       26    I/O attempted to unopen file
39       27    Invalid command parameter
40       28    File already in directory
41       29    Attempt to open file already open


TRSDOS 1.3 BASIC Error Codes
-----------------------------------------------------------

Error     ERR      Error
Code      Value    Message
-----     -----    --------
1           0      NEXT without FOR
2           2      Syntax error
3           4      RETURN without GOSUB
4           6      Out of DATA
5           8      Illegal function call
6           10     Overflow
7           12     Out of memory
8           14     Undefined line number
9           16     Subscript out of range
10          18     Redimensioned array
11          20     Division by zero
12          22     Illegal direct
13          24     Type mismatch
14          26     Out of string space
15          28     String too long
16          30     String formula too complex
17          32     Can't continue
18          34     No RESUME
19          36     RESUME without error
20          38     Unprintable error
21          40     Missing operand
22          42     Bad file data
23          44     Disk BASIC feature
24          46     Undefined user function
51          100    Field overflow
52          102    Internal error
53          104    Bad file number
54          106    File not found
55          108    Bad file mode
58          114    Disk I/O error
62          122    Disk full
63          124    Input past end
64          126    Bad record number
65          128    Bad file name
67          132    Direct statement in file
68          134    Too many files
69          136    Disk write protected
70          138    File access denied
